package com.group01.community.service;

import com.group01.community.entity.SysMenu;
import com.baomidou.mybatisplus.extension.service.IService;
import com.group01.community.entity.SysRoleMenu;
import com.group01.community.entity.vo.SysMenuVo;

import java.util.List;

/**
 * <p>
 * 菜单权限表 服务类
 * </p>
 *
 * @author guoyuan
 * @since 2025-05-01
 */
public interface SysMenuService extends IService<SysMenu> {


    /**
     * 根据用户名字查询三级菜单
     * @param username
     * @return
     */
    List<SysMenuVo> getMenusByUserName(String username);

    /**
     * 查询所有分级菜单(四级菜单+模糊查询)
     * @return
     */
    List<SysMenuVo> getMenuList(String menuName, String status);


    /**
     * 根据菜单名称获取菜单信息
     * @param menuName
     * @return
     */
    SysMenu getMenuByMenuName(String menuName);


    /**
     * 添加菜单
     * @param sysMenu
     * @return
     */
    void addMenu(SysMenu sysMenu);


    /**
     * 更新菜单
     * @param sysMenu
     * @return
     */
    void updateMenu(SysMenu sysMenu);


    /**
     * 删除菜单
     * @param menuId
     * @return
     */
    void deleteMenu(Long menuId);



}
